package portal.servlets;

import java.io.IOException;

import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

import portal.dao.PersonaDAO;
import portal.excepcion.DAOExcepcion;
import portal.modelo.Persona;
import portal.modelo.Usuario;
import portal.negocio.GestionPersona;

/**
 * Servlet implementation class ResgistrarResponsableServlet
 */
@WebServlet("/ResgistrarResponsableServlet")
public class RegistrarResponsableServlet extends HttpServlet {
	private static final long serialVersionUID = 1L;
       
    /**
     * @see HttpServlet#HttpServlet()
     */
    public RegistrarResponsableServlet() {
        super();
        // TODO Auto-generated constructor stub
    }

	/**
	 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
	}

	/**
	 * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		
		GestionPersona personaImplements = new GestionPersona();
		
		//CAPTURA DE DATOS DEL FORM
		String nombresPersona 			= request.getParameter("nombresPersona");
		String apellidoPaternoPersona 	= request.getParameter("apellidoPaternoPersona");
		String apellidoMaternoPersona 	= request.getParameter("apellidoMaternoPersona");
		String sexoPersona 				= request.getParameter("sexoPersona");
		String numeroCelularPersona 	= request.getParameter("numeroCelularPersona");
		String direccionPersona 		= request.getParameter("direccionPersona");
		
		String idDocumento 				= request.getParameter("idDocumento");
		String numeroDniPersona 		= request.getParameter("numeroDniPersona");
		
		String correoPersona 			= request.getParameter("correoPersona");
		String passwordUsuario 			= request.getParameter("passwordUsuario");
		String repasswordUsuario 		= request.getParameter("repasswordUsuario");
		
		
		//VALIDACIONES
		if(nombresPersona != "" && apellidoPaternoPersona != "" && apellidoMaternoPersona != "" && sexoPersona != "" && numeroCelularPersona != "" && 
		   direccionPersona != "" && idDocumento != "" && numeroDniPersona != "" && correoPersona != "" && passwordUsuario != "" && repasswordUsuario != ""){
			
			if(passwordUsuario.equals(repasswordUsuario)){
				System.out.println("EJECUTA INGRESO DE DATOS AL SERVIDOR");
				
				try {
					personaImplements.insertar(nombresPersona, apellidoPaternoPersona, apellidoMaternoPersona, sexoPersona, correoPersona, idDocumento, numeroDniPersona, numeroCelularPersona, direccionPersona, correoPersona, passwordUsuario);
				
					HttpSession sesion = request.getSession(true);
					sesion.setAttribute("sesionActiva", numeroDniPersona);
					sesion.setAttribute("NombreUsuario", nombresPersona);
					sesion.setAttribute("apellidoPaterno", apellidoPaternoPersona);
					sesion.setAttribute("apellidoMaterno", apellidoMaternoPersona);
					sesion.setAttribute("numeroDocumento", numeroDniPersona);
					sesion.setAttribute("email", correoPersona);
					sesion.setAttribute("TipoUsuario", 2);
					
					RequestDispatcher rd = request.getRequestDispatcher("index.jsp");
					rd.forward(request, response);
				
				} catch (DAOExcepcion e1) {
					System.out.println(e1);
					e1.printStackTrace();
					
					String errmsg = "ERROR SERVIDOR " + e1;
					request.setAttribute("MENSAJE", errmsg);
					RequestDispatcher rd = request.getRequestDispatcher("login.jsp");
					rd.forward(request, response);
				}
				
			}else{
				String errmsg = "Passwords no coinciden.";
				request.setAttribute("MENSAJE", errmsg);
				RequestDispatcher rd = request.getRequestDispatcher("login.jsp");
				rd.forward(request, response);
			}
			
		}else{
			String errmsg = "Datos de Responsable de Familia Incompletos";
			request.setAttribute("MENSAJE", errmsg);
			RequestDispatcher rd = request.getRequestDispatcher("login.jsp");
			rd.forward(request, response);
		}
		
		
		
	}

}
